/*
 * @lc app=leetcode.cn id=14 lang=java
 *
 * [14] 最长公共前缀
 */

// @lc code=start
class Solution {
    // [1ms, 68%], [39MB, 78%]
    public String longestCommonPrefix(String[] strs) {
        int len = strs.length;
        if (len == 0)
            return "";
        if (len == 1)
            return strs[0];
        int len0 = strs[0].length();
        for (int index = 0; index < len0; index++) {
            char c = strs[0].charAt(index);
            for (int i = 1; i < len; i++) {
                if (strs[i].length() <= index || strs[i].charAt(index) != c) {
                    return strs[0].substring(0, index);
                }
            }
        }
        return strs[0];
    }
}
// @lc code=end

//     // 暴力解法
//     // [2ms, 19%], [39MB, 39%]
//     public String longestCommonPrefix(String[] strs) {
//         int len = strs.length;
//         if (len == 0)
//             return "";
//         if (len == 1)
//             return strs[0];
//         String result = strs[0];
//         while (result.length() >= 0) {
//             for (int i = 1;; i++) {
//                 if (i == len) {
//                     return result;
//                 } else if (!strs[i].startsWith(result)) {
//                     result = result.substring(0, result.length() - 1);
//                     break;
//                 }
//             }
//         }
//         return result;
//     }